Skip to content

Conversation

@geurto
Copy link
Collaborator

@geurto geurto commented Oct 20, 2025

Description

This PR adds doxygen-style documentation checks for C++ code. Specifically, it adds

  • a shell script to recursively check documentation foramtiing on all .cpp/.h/.hpp files in ros2_ws/src;
  • a pre-commit check that executes the shell script mentioned above;
  • a GitHub workflow that runs the script when a push is done to main, or a pull request is made;
  • an update to the clang-format workflow, which was giving an error;
  • code documentation in moveit_manager.hpp to adhere to Doxygen documentation standards;
  • updated documentation.

Fixes: #227

Testing

  • ran the script with correct and incorrect documentation;
  • ran the pre-commit check with correct and incorrect documentation;
  • ran the GitHub workflow locally using act with correct and incorrect documentation.

Documentation

  • I have updated the documentation (if necessary)

Additional Notes

The doxygen linter fails in pre-commit checks when no output is produced (the GENERATE_<...> values in doxyfile.lint). Therefore, RTF output is generated to pass the check. The generated files are added to the .gitignore.

@geurto geurto linked an issue Oct 20, 2025 that may be closed by this pull request
7 tasks
Copy link
Collaborator

@Jelmerdw Jelmerdw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't forget to sign off you commits. A DCO workflow runs automatically on all repos on alliander-opensource and fails when you don't sign off your commits.

const moveit::core::JointModelGroup *joint_model_group;
moveit_visual_tools::MoveItVisualTools moveit_visual_tools;
PoseStamped goal_pose;
rclcpp::Node::SharedPtr node; /**< ROS2 node with MoveIt Services */
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Previously instead of using /**< ... */ I simply used // ..., is the /**< ... */ version the neater way of commenting behind a variable?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In order for Doxygen to recognize the comment as a docstring, it needs to be formatted a certain way. See: https://www.doxygen.nl/manual/docblocks.html

@geurto geurto force-pushed the 227-workflow-add-checks-on-cpp-documentation branch from 9cd4267 to bcd4218 Compare October 29, 2025 15:15
Signed-off-by: Peter Geurts <[email protected]>
Signed-off-by: Peter Geurts <[email protected]>
Signed-off-by: Peter Geurts <[email protected]>
…hods; remove generated Doxygen output folder after script has run

Signed-off-by: Peter Geurts <[email protected]>
…doc warnings in doxyfile.lint

Signed-off-by: Peter Geurts <[email protected]>
…GH workflows to use modern pip version of clang-format

Signed-off-by: Peter Geurts <[email protected]>
@Jelmerdw Jelmerdw force-pushed the 227-workflow-add-checks-on-cpp-documentation branch from bcd4218 to 224079c Compare October 30, 2025 08:06
@Jelmerdw Jelmerdw merged commit a92b85f into main Oct 30, 2025
11 checks passed
@Jelmerdw Jelmerdw deleted the 227-workflow-add-checks-on-cpp-documentation branch October 30, 2025 10:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Workflow] Add checks on CPP documentation

4 participants